import axios from "axios";
import { ElMessage } from 'element-plus'

let debug = false
let instance = axios.create({
    baseURL: debug ? 'http://127.0.0.1:3000' : 'https://www.doupaopao.club',
    timeout: 3000,
});

// 设置axios拦截器：请求拦截器
instance.interceptors.request.use(config => {
    // this.({ title: '加载中', mask: true })
    config.headers['token'] = localStorage.getItem('token');
    return config
},err => {
    return Promise.reject(err)
})

// 设置axios拦截器: 响应拦截器
instance.interceptors.response.use(res  =>{
    // if (res.status === 200) {
    //     console.log(res.status)
    //     return Promise.resolve(res)
    // } else {
    //     return Promise.resolve(res.data)
    // }
    // uni.hideLoading()
    return Promise.resolve(res)
},err => {
    return Promise.reject(err)
})

const serviceFac = {
    get(url,param){
        return new Promise((resolve,reject)=>{
            instance({
                method:'get',
                url,
                params:param
            }).then(res=>{  //axios返回的是一个promise对象
                if (res.data.code !== 200) {
                    // console.log(res.data.data, 'userLogin')
                    ElMessage({
                        message: res.data.msg
                    })
                    reject(res)
                    return
                }
                resolve(res)
            }).catch(err=>{
                console.log(err,'异常err')
            })

        })
    },
    //post请求
    post(url,param){
        return new Promise((resolve,reject)=>{
            instance({
                method:'post',
                url,
                data:param
            }).then(res=>{

                if (res.data.code !== 200) {
                    // console.log(res.data.data.msg, 'userLogin')
                    ElMessage({
                        message: res.data.msg
                    })
                    reject(res)
                    return
                }
                resolve(res)
            }).catch(err=>{
                console.log(err,'异常')
            })
        })
    }
}

export default serviceFac